export class ElementNode{
    /**
     * 标签名
     */
    name:string;
    /**
     * 标签在html中起始位置
     */
    start:number;
    type:string;
    char:string;
    root:ElementNode;
    /**
     * 标签在html的结束位置
     */
    end:number;
    /**
     * 标签的属性
     */
    attrs:any[];
    /**
     * 标签的父元素
     */
    parent:ElementNode;
    unarySlash:string;
    /**
     * 标签的子元素
     */
    children:ElementNode[];
    constructor(name:string,start?:number,parent?:ElementNode){
        this.name=name;
        this.start=start;
        this.parent=parent;
    }
    
}
export class AttributeKV{
    name:string;
    value:string;
}
export class StackNode{
    tag:string;
    attrs:AttributeKV[];
}